//负责操作localStorage的帮助文件
/*获取  添加 移除数据*/
export const KEY='goodsdata';
export var valueObj={goodsid:0,count:0};

//实现数据的增加
//数据格式为{goodsid:87,count:10}
export function setItem(value){
  var jsonString=localStorage.getItem(KEY);
  jsonString=jsonString||'[]';
  var arr =JSON.parse(jsonString);
  arr.push(value);
  localStorage.setItem(KEY,JSON.stringify(arr))
}
//实现数据的获取
export function getItem(){
  var jsonString=localStorage.getItem(KEY);
  jsonString=jsonString||'[]';
  return JSON.parse(jsonString)
}

//实现数据的移除
export function removeItem(goodsid){
  var arr=getItem();
  for(var i=arr.length-1;i>=0;i--){
    if(arr[i].goodsid==goodsid){
      arr.splice(i,1);
    }
  }
  //将最新的arr保存回localStorage中
  localStorage.setItem(KEY,JSON.stringify(arr))
}


//将localStorage中的数据整合成一个对象的形式

//原来的数据格式为
/*{商品id的值：商品的购买数量,
    商品id的值：商品的购买数量}*/
    /*
     * 真正的数据格式为
     *{
     *  87:4,
     *  88,1
     *}
     */
    export function getgoodsObject(){
      var arr=getItem();
      var resObj={};
      for(var i=0;i<arr.length;i++){
        var item=arr[i];
        if(!resObj[item.goodsid]){
          resObj[item.goodsid]=item.count;
        }else {
          var count=resObj[item.goodsid];
          resObj[item.goodsid]=count+item.count;
        }
      }
      return resObj;
    }


    //obj的格式：{goodsid:87,type:'add'}

    export function updateData(obj){
      var arr =getItem();
      var count=1;
      if(obj.type=='add'){
        arr.push({goodsid:obj.goodsid,count:count})
      }else{
        for(var i=0;i<arr.length;i++){
          if(arr[i].goodsid==obj.goodsid){
            if(arr[i].count>1){
              arr[i].count=arr[i].count-1;
              break;
            }else{
              arr.splice(i,1);
              break;
            }
          }
        }
      }

      localStorage.setItem(KEY,JSON.stringify(arr))
    }